#ifndef		__CORE__
#define		__CORE__

#include	<iostream>

#include	<ncurses.h>
#include	"EventManager.hpp"
#include	"WindowExplorer.hpp"
#include	"WindowWarning.hpp"
#include	"SubWinWarning.hpp"
#include	"SubWinLines.hpp"
#include	"WindowCode.hpp"

#define		COLOR_BG_FOCUS		COLOR_BLACK
#define		COLOR_FG_FOCUS		COLOR_YELLOW

#define		COLOR_BG_CURSOR		COLOR_BLACK
#define		COLOR_FG_CURSOR		COLOR_GREEN

class	Core
{
public:
  Core();
  ~Core();
  void	initWindows();
  void	run();

private:
  void	updateAllWindows();
  void	updateSingleWindow();

private:
  WindowCode		*_windowCode;
  WindowExplorer	*_winExplorer;
  WindowWarning		*_winWarning;
  EventManager		*eventManager;
};

#endif
